<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Kinetis Bootloader Host: Logging</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="nxp_logo_small.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Kinetis Bootloader Host
   &#160;<span id="projectnumber">2.0.0</span>
   </div>
   <div id="projectbrief">Host Tools for Kinetis devices</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Introduction</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li class="current"><a href="modules.html"><span>Modules</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__logging.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a>  </div>
  <div class="headertitle">
<div class="title">Logging<div class="ingroups"><a class="el" href="group__blfwk.html">Host Bootloader Framework</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Logging support.  
<a href="#details">More...</a></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Collaboration diagram for Logging:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<center><table><tr><td><div class="center"><iframe scrolling="no" frameborder="0" src="group__logging.svg" width="308" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
</td></tr></table></center>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:class_logger"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#class_logger">Logger</a></td></tr>
<tr class="memdesc:class_logger"><td class="mdescLeft">&#160;</td><td class="mdescRight">Base logger class.  <a href="group__logging.html#class_logger">More...</a><br /></td></tr>
<tr class="separator:class_logger"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:class_log"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#class_log">Log</a></td></tr>
<tr class="memdesc:class_log"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wraps a set of static functions for easy global logging access.  <a href="group__logging.html#class_log">More...</a><br /></td></tr>
<tr class="separator:class_log"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:class_stdout_logger"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#class_stdout_logger">StdoutLogger</a></td></tr>
<tr class="memdesc:class_stdout_logger"><td class="mdescLeft">&#160;</td><td class="mdescRight">Simple logger that writes to stdout.  <a href="group__logging.html#class_stdout_logger">More...</a><br /></td></tr>
<tr class="separator:class_stdout_logger"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:class_file_logger"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#class_file_logger">FileLogger</a></td></tr>
<tr class="memdesc:class_file_logger"><td class="mdescLeft">&#160;</td><td class="mdescRight">Simple logger that writes to a file.  <a href="group__logging.html#class_file_logger">More...</a><br /></td></tr>
<tr class="separator:class_file_logger"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Usage Information</h2>
<p>Logging support. </p>
<hr/><h2 class="groupheader">Class Documentation</h2>
<a name="class_logger" id="class_logger"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class Logger</td>
        </tr>
      </table>
</div><div class="memdoc">
<div class="textblock"><p>Base logger class. </p>
<p>There are two types of logging levels that are used by this class. First there is the filter level. Any log message that is assigned a level higher than the current filter level is discarded. Secondly there is the current output level. <a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> messages that do not have their own level use the current output level to determine if they should be shown or not.</p>
<p>The two methods <a class="el" href="group__logging.html#a86a9875a4e4aae6670f16237e651ba3a" title="Changes the logging level to level. ">setFilterLevel()</a> and <a class="el" href="group__logging.html#a2fcf77f7190217a3a277f75196cf4c0e" title="Changes the logging output level to level. ">setOutputLevel()</a> set the filter and default output logging levels, respectively. There are corresponding getter methods as well. Both the filter and output levels are initialized to <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a61a9b6fc1e9babc448984b8a34ca2ed2" title="The normal log level, for status messages. ">INFO</a> during object construction.</p>
<p>Most use of the logger classes is expected to be through the <a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> class. It provides static logging methods that call through to a global singleton logger instance. There is also a <a class="el" href="class_log_1_1_set_output_level.html" title="Utility class to temporarily change the logging output level. ">Log::SetOutputLevel</a> utility class that makes it extremely easiy to temporarily change the default output logging level.</p>
<p>Of all the overloaded <a class="el" href="group__logging.html#a4e63cbc1d6d8f374afe1d3e12b5f5842" title="Log with format. ">log()</a> methods in this class, none of them are really expected to be reimplemented by subclasses. Instead, there is the single protected <a class="el" href="group__logging.html#a67959f43a5ad97a4141eaad27a513f4a" title="The base pure virtual logging function implemented by subclasses. ">_log()</a> method that takes a simple string pointer. The other log methods all wind up calling <a class="el" href="group__logging.html#a67959f43a5ad97a4141eaad27a513f4a" title="The base pure virtual logging function implemented by subclasses. ">_log()</a>, so it provides a single point to override. In fact, <a class="el" href="group__logging.html#a67959f43a5ad97a4141eaad27a513f4a" title="The base pure virtual logging function implemented by subclasses. ">_log()</a> is pure virtual, so subclasses must implement it.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a></dd></dl>
<p>There are two types of logging levels that are used by this class. First there is the filter level. Any log message that is assigned a level higher than the current filter level is discarded. Secondly there is the current output level. <a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> messages that do not have their own level use the current output level to determine if they should be shown or not.</p>
<p>The two methods <a class="el" href="group__logging.html#a86a9875a4e4aae6670f16237e651ba3a" title="Changes the logging level to level. ">setFilterLevel()</a> and <a class="el" href="group__logging.html#a2fcf77f7190217a3a277f75196cf4c0e" title="Changes the logging output level to level. ">setOutputLevel()</a> set the filter and default output logging levels, respectively. There are corresponding getter methods as well. Both the filter and output levels are initialized to <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec" title="The normal log level, for status messages. ">kInfo</a> during object construction.</p>
<p>Most use of the logger classes is expected to be through the <a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> class. It provides static logging methods that call through to a global singleton logger instance. There is also a <a class="el" href="class_log_1_1_set_output_level.html" title="Utility class to temporarily change the logging output level. ">Log::SetOutputLevel</a> utility class that makes it extremely easiy to temporarily change the default output logging level.</p>
<p>Of all the overloaded <a class="el" href="group__logging.html#a4e63cbc1d6d8f374afe1d3e12b5f5842" title="Log with format. ">log()</a> methods in this class, none of them are really expected to be reimplemented by subclasses. Instead, there is the single protected <a class="el" href="group__logging.html#a67959f43a5ad97a4141eaad27a513f4a" title="The base pure virtual logging function implemented by subclasses. ">_log()</a> method that takes a simple string pointer. The other log methods all wind up calling <a class="el" href="group__logging.html#a67959f43a5ad97a4141eaad27a513f4a" title="The base pure virtual logging function implemented by subclasses. ">_log()</a>, so it provides a single point to override. In fact, <a class="el" href="group__logging.html#a67959f43a5ad97a4141eaad27a513f4a" title="The base pure virtual logging function implemented by subclasses. ">_log()</a> is pure virtual, so subclasses must implement it.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> </dd></dl>
</div><div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-1-trigger" src="closed.png" alt="+"/> Inheritance diagram for Logger:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="class_logger__inherit__graph.svg" width="216" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr><td colspan="2"><h3>Public Types</h3></td></tr>
<tr class="memitem:a5209ca5ee1a2a8181287485e950cf381"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> { <br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aec3080807fafda83da96a51800b91709">URGENT</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a3ce1bbeb15a3d8e29e4c5e75492a781b">ERROR</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381afb1bf96f41b282521d9438106ea11bca">WARNING</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a61a9b6fc1e9babc448984b8a34ca2ed2">INFO</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aa07236365c754ad697a4786ff21e321e">INFO2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abdc8d840ac4b73e1bd3212184af8f85e">DEBUG</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a616a45f059b15bff1cda9207cd465564">DEBUG2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aca09a23920b7567780c73d5e6ef30568">kUrgent</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a2c6a6e74a8a150cba779960062d126c0">kJson</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a30bcc9bfa9b1cd8f269c6763287209cc">kError</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a8e3ed7030f92b6542e5354e937f2e0ee">kWarning</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec">kInfo</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a0e22aade4d30c09d021b81f88e422d59">kInfo2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4">kDebug</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a7059bc37726a537e725116d79d149cb3">kDebug2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ade1be3a5625f4037711f67c7064905d2">kInfo1</a> = kInfo, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a894c8bec70d9093570638d698983d86f">kDebug1</a> = kDebug
<br />
 }<tr class="memdesc:a5209ca5ee1a2a8181287485e950cf381"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logging levels.  <a href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a5209ca5ee1a2a8181287485e950cf381"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5209ca5ee1a2a8181287485e950cf381"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> { <br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aec3080807fafda83da96a51800b91709">URGENT</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a3ce1bbeb15a3d8e29e4c5e75492a781b">ERROR</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381afb1bf96f41b282521d9438106ea11bca">WARNING</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a61a9b6fc1e9babc448984b8a34ca2ed2">INFO</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aa07236365c754ad697a4786ff21e321e">INFO2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abdc8d840ac4b73e1bd3212184af8f85e">DEBUG</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a616a45f059b15bff1cda9207cd465564">DEBUG2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aca09a23920b7567780c73d5e6ef30568">kUrgent</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a2c6a6e74a8a150cba779960062d126c0">kJson</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a30bcc9bfa9b1cd8f269c6763287209cc">kError</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a8e3ed7030f92b6542e5354e937f2e0ee">kWarning</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec">kInfo</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a0e22aade4d30c09d021b81f88e422d59">kInfo2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4">kDebug</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a7059bc37726a537e725116d79d149cb3">kDebug2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ade1be3a5625f4037711f67c7064905d2">kInfo1</a> = kInfo, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a894c8bec70d9093570638d698983d86f">kDebug1</a> = kDebug
<br />
 }<tr class="memdesc:a5209ca5ee1a2a8181287485e950cf381"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logging levels.  <a href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a5209ca5ee1a2a8181287485e950cf381"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><h3>Public Member Functions</h3></td></tr>
<tr class="memitem:abc41bfb031d896170c7675fa96a6b30c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc41bfb031d896170c7675fa96a6b30c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#abc41bfb031d896170c7675fa96a6b30c">Logger</a> ()</td></tr>
<tr class="memdesc:abc41bfb031d896170c7675fa96a6b30c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:abc41bfb031d896170c7675fa96a6b30c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae93f62ca3e47716b7120acb032a260f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae93f62ca3e47716b7120acb032a260f3"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ae93f62ca3e47716b7120acb032a260f3">~Logger</a> ()</td></tr>
<tr class="memdesc:ae93f62ca3e47716b7120acb032a260f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:ae93f62ca3e47716b7120acb032a260f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc41bfb031d896170c7675fa96a6b30c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc41bfb031d896170c7675fa96a6b30c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#abc41bfb031d896170c7675fa96a6b30c">Logger</a> ()</td></tr>
<tr class="memdesc:abc41bfb031d896170c7675fa96a6b30c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:abc41bfb031d896170c7675fa96a6b30c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae93f62ca3e47716b7120acb032a260f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae93f62ca3e47716b7120acb032a260f3"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ae93f62ca3e47716b7120acb032a260f3">~Logger</a> ()</td></tr>
<tr class="memdesc:ae93f62ca3e47716b7120acb032a260f3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:ae93f62ca3e47716b7120acb032a260f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Logging levels</div></td></tr>
<tr class="memitem:a86a9875a4e4aae6670f16237e651ba3a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86a9875a4e4aae6670f16237e651ba3a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a86a9875a4e4aae6670f16237e651ba3a">setFilterLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a86a9875a4e4aae6670f16237e651ba3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging level to <em>level</em>. <br /></td></tr>
<tr class="separator:a86a9875a4e4aae6670f16237e651ba3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f0668007317623100b0eac42ae6796"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65f0668007317623100b0eac42ae6796"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a65f0668007317623100b0eac42ae6796">getFilterLevel</a> () const </td></tr>
<tr class="memdesc:a65f0668007317623100b0eac42ae6796"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging filter level. <br /></td></tr>
<tr class="separator:a65f0668007317623100b0eac42ae6796"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fcf77f7190217a3a277f75196cf4c0e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2fcf77f7190217a3a277f75196cf4c0e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a2fcf77f7190217a3a277f75196cf4c0e">setOutputLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a2fcf77f7190217a3a277f75196cf4c0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging output level to <em>level</em>. <br /></td></tr>
<tr class="separator:a2fcf77f7190217a3a277f75196cf4c0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cb967d830ff2cff918ce4eb67154301"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cb967d830ff2cff918ce4eb67154301"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a9cb967d830ff2cff918ce4eb67154301">getOutputLevel</a> () const </td></tr>
<tr class="memdesc:a9cb967d830ff2cff918ce4eb67154301"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging output level. <br /></td></tr>
<tr class="separator:a9cb967d830ff2cff918ce4eb67154301"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86a9875a4e4aae6670f16237e651ba3a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86a9875a4e4aae6670f16237e651ba3a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a86a9875a4e4aae6670f16237e651ba3a">setFilterLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a86a9875a4e4aae6670f16237e651ba3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging level to <em>level</em>. <br /></td></tr>
<tr class="separator:a86a9875a4e4aae6670f16237e651ba3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f0668007317623100b0eac42ae6796"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65f0668007317623100b0eac42ae6796"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a65f0668007317623100b0eac42ae6796">getFilterLevel</a> () const </td></tr>
<tr class="memdesc:a65f0668007317623100b0eac42ae6796"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging filter level. <br /></td></tr>
<tr class="separator:a65f0668007317623100b0eac42ae6796"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fcf77f7190217a3a277f75196cf4c0e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2fcf77f7190217a3a277f75196cf4c0e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a2fcf77f7190217a3a277f75196cf4c0e">setOutputLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a2fcf77f7190217a3a277f75196cf4c0e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging output level to <em>level</em>. <br /></td></tr>
<tr class="separator:a2fcf77f7190217a3a277f75196cf4c0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cb967d830ff2cff918ce4eb67154301"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cb967d830ff2cff918ce4eb67154301"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a9cb967d830ff2cff918ce4eb67154301">getOutputLevel</a> () const </td></tr>
<tr class="memdesc:a9cb967d830ff2cff918ce4eb67154301"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging output level. <br /></td></tr>
<tr class="separator:a9cb967d830ff2cff918ce4eb67154301"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Logging</div></td></tr>
<tr class="memitem:a4e63cbc1d6d8f374afe1d3e12b5f5842"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e63cbc1d6d8f374afe1d3e12b5f5842"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4e63cbc1d6d8f374afe1d3e12b5f5842">log</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a4e63cbc1d6d8f374afe1d3e12b5f5842"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format. <br /></td></tr>
<tr class="separator:a4e63cbc1d6d8f374afe1d3e12b5f5842"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e0a3c00612edfa447671831c8857e94"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e0a3c00612edfa447671831c8857e94"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4e0a3c00612edfa447671831c8857e94">log</a> (const std::string &amp;msg)</td></tr>
<tr class="memdesc:a4e0a3c00612edfa447671831c8857e94"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string object. <br /></td></tr>
<tr class="separator:a4e0a3c00612edfa447671831c8857e94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28c8c541a0e97a275b9348613b1321fd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28c8c541a0e97a275b9348613b1321fd"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a28c8c541a0e97a275b9348613b1321fd">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt,...)</td></tr>
<tr class="memdesc:a28c8c541a0e97a275b9348613b1321fd"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format at a specific output level. <br /></td></tr>
<tr class="separator:a28c8c541a0e97a275b9348613b1321fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a880f92a9fb0a790e947578b043d73cb9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a880f92a9fb0a790e947578b043d73cb9"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a880f92a9fb0a790e947578b043d73cb9">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const std::string &amp;msg)</td></tr>
<tr class="memdesc:a880f92a9fb0a790e947578b043d73cb9"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string output at a specific output level. <br /></td></tr>
<tr class="separator:a880f92a9fb0a790e947578b043d73cb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab18355845aa189c9cfb6a6b86b8c8868"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab18355845aa189c9cfb6a6b86b8c8868"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ab18355845aa189c9cfb6a6b86b8c8868">log</a> (const char *fmt, va_list args)</td></tr>
<tr class="memdesc:ab18355845aa189c9cfb6a6b86b8c8868"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument list. <br /></td></tr>
<tr class="separator:ab18355845aa189c9cfb6a6b86b8c8868"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00e886cc5cc5f7ea1058412eddee6da1"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a00e886cc5cc5f7ea1058412eddee6da1">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt, va_list args)</td></tr>
<tr class="memdesc:a00e886cc5cc5f7ea1058412eddee6da1"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument with a specific output level.  <a href="#a00e886cc5cc5f7ea1058412eddee6da1">More...</a><br /></td></tr>
<tr class="separator:a00e886cc5cc5f7ea1058412eddee6da1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac85cc5c6ece86ba73fe3228a22834be1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac85cc5c6ece86ba73fe3228a22834be1"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ac85cc5c6ece86ba73fe3228a22834be1">log</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:ac85cc5c6ece86ba73fe3228a22834be1"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format. <br /></td></tr>
<tr class="separator:ac85cc5c6ece86ba73fe3228a22834be1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e0a3c00612edfa447671831c8857e94"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e0a3c00612edfa447671831c8857e94"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4e0a3c00612edfa447671831c8857e94">log</a> (const std::string &amp;msg)</td></tr>
<tr class="memdesc:a4e0a3c00612edfa447671831c8857e94"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string object. <br /></td></tr>
<tr class="separator:a4e0a3c00612edfa447671831c8857e94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e500a1fe9a0fc6cba5991aadef48ab4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5e500a1fe9a0fc6cba5991aadef48ab4"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5e500a1fe9a0fc6cba5991aadef48ab4">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt,...)</td></tr>
<tr class="memdesc:a5e500a1fe9a0fc6cba5991aadef48ab4"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format at a specific output level. <br /></td></tr>
<tr class="separator:a5e500a1fe9a0fc6cba5991aadef48ab4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a880f92a9fb0a790e947578b043d73cb9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a880f92a9fb0a790e947578b043d73cb9"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a880f92a9fb0a790e947578b043d73cb9">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const std::string &amp;msg)</td></tr>
<tr class="memdesc:a880f92a9fb0a790e947578b043d73cb9"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string output at a specific output level. <br /></td></tr>
<tr class="separator:a880f92a9fb0a790e947578b043d73cb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc877aa7fe11b84dca4b6acfca00ab56"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc877aa7fe11b84dca4b6acfca00ab56"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#acc877aa7fe11b84dca4b6acfca00ab56">log</a> (const char *fmt, va_list args)</td></tr>
<tr class="memdesc:acc877aa7fe11b84dca4b6acfca00ab56"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument list. <br /></td></tr>
<tr class="separator:acc877aa7fe11b84dca4b6acfca00ab56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c0ec5c4ffd1d27d1c0934fade870d75"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c0ec5c4ffd1d27d1c0934fade870d75"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5c0ec5c4ffd1d27d1c0934fade870d75">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt, va_list args)</td></tr>
<tr class="memdesc:a5c0ec5c4ffd1d27d1c0934fade870d75"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument with a specific output level. <br /></td></tr>
<tr class="separator:a5c0ec5c4ffd1d27d1c0934fade870d75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><h3>Protected Member Functions</h3></td></tr>
<tr class="memitem:a67959f43a5ad97a4141eaad27a513f4a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67959f43a5ad97a4141eaad27a513f4a"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a67959f43a5ad97a4141eaad27a513f4a">_log</a> (const char *msg)=0</td></tr>
<tr class="memdesc:a67959f43a5ad97a4141eaad27a513f4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base pure virtual logging function implemented by subclasses. <br /></td></tr>
<tr class="separator:a67959f43a5ad97a4141eaad27a513f4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67959f43a5ad97a4141eaad27a513f4a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67959f43a5ad97a4141eaad27a513f4a"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a67959f43a5ad97a4141eaad27a513f4a">_log</a> (const char *msg)=0</td></tr>
<tr class="memdesc:a67959f43a5ad97a4141eaad27a513f4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">The base pure virtual logging function implemented by subclasses. <br /></td></tr>
<tr class="separator:a67959f43a5ad97a4141eaad27a513f4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><h3>Protected Attributes</h3></td></tr>
<tr class="memitem:a1cae1fe08a7e386fd0539f61658d3a1f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1cae1fe08a7e386fd0539f61658d3a1f"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a1cae1fe08a7e386fd0539f61658d3a1f">m_filter</a></td></tr>
<tr class="memdesc:a1cae1fe08a7e386fd0539f61658d3a1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current logging filter level. <br /></td></tr>
<tr class="separator:a1cae1fe08a7e386fd0539f61658d3a1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02dcc6a005e650891bbfb8c76e590185"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02dcc6a005e650891bbfb8c76e590185"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a02dcc6a005e650891bbfb8c76e590185">m_level</a></td></tr>
<tr class="memdesc:a02dcc6a005e650891bbfb8c76e590185"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current log output level. <br /></td></tr>
<tr class="separator:a02dcc6a005e650891bbfb8c76e590185"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h4 class="groupheader">Member Enumeration Documentation</h4>
<a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">Logger::log_level_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Logging levels. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381aec3080807fafda83da96a51800b91709"></a>URGENT&#160;</td><td class="fielddoc">
<p>The lowest level, for messages that must always be logged. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a3ce1bbeb15a3d8e29e4c5e75492a781b"></a>ERROR&#160;</td><td class="fielddoc">
<p>For fatal error messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381afb1bf96f41b282521d9438106ea11bca"></a>WARNING&#160;</td><td class="fielddoc">
<p>For non-fatal warning messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a61a9b6fc1e9babc448984b8a34ca2ed2"></a>INFO&#160;</td><td class="fielddoc">
<p>The normal log level, for status messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381aa07236365c754ad697a4786ff21e321e"></a>INFO2&#160;</td><td class="fielddoc">
<p>For verbose status messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381abdc8d840ac4b73e1bd3212184af8f85e"></a>DEBUG&#160;</td><td class="fielddoc">
<p>For internal reporting. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a616a45f059b15bff1cda9207cd465564"></a>DEBUG2&#160;</td><td class="fielddoc">
<p>Highest log level; verbose debug logging. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381aca09a23920b7567780c73d5e6ef30568"></a>kUrgent&#160;</td><td class="fielddoc">
<p>The lowest level, for messages that must always be logged. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a2c6a6e74a8a150cba779960062d126c0"></a>kJson&#160;</td><td class="fielddoc">
<p>For machine language output only. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a30bcc9bfa9b1cd8f269c6763287209cc"></a>kError&#160;</td><td class="fielddoc">
<p>For fatal error messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a8e3ed7030f92b6542e5354e937f2e0ee"></a>kWarning&#160;</td><td class="fielddoc">
<p>For non-fatal warning messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec"></a>kInfo&#160;</td><td class="fielddoc">
<p>The normal log level, for status messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a0e22aade4d30c09d021b81f88e422d59"></a>kInfo2&#160;</td><td class="fielddoc">
<p>For verbose status messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4"></a>kDebug&#160;</td><td class="fielddoc">
<p>For internal reporting. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a7059bc37726a537e725116d79d149cb3"></a>kDebug2&#160;</td><td class="fielddoc">
<p>Highest log level; verbose debug logging. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381ade1be3a5625f4037711f67c7064905d2"></a>kInfo1&#160;</td><td class="fielddoc">
<p>Alias for <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec" title="The normal log level, for status messages. ">kInfo</a>. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a894c8bec70d9093570638d698983d86f"></a>kDebug1&#160;</td><td class="fielddoc">
<p>Alias for <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4" title="For internal reporting. ">kDebug</a>. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">Logger::log_level_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Logging levels. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381aec3080807fafda83da96a51800b91709"></a>URGENT&#160;</td><td class="fielddoc">
<p>The lowest level, for messages that must always be logged. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a3ce1bbeb15a3d8e29e4c5e75492a781b"></a>ERROR&#160;</td><td class="fielddoc">
<p>For fatal error messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381afb1bf96f41b282521d9438106ea11bca"></a>WARNING&#160;</td><td class="fielddoc">
<p>For non-fatal warning messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a61a9b6fc1e9babc448984b8a34ca2ed2"></a>INFO&#160;</td><td class="fielddoc">
<p>The normal log level, for status messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381aa07236365c754ad697a4786ff21e321e"></a>INFO2&#160;</td><td class="fielddoc">
<p>For verbose status messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381abdc8d840ac4b73e1bd3212184af8f85e"></a>DEBUG&#160;</td><td class="fielddoc">
<p>For internal reporting. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a616a45f059b15bff1cda9207cd465564"></a>DEBUG2&#160;</td><td class="fielddoc">
<p>Highest log level; verbose debug logging. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381aca09a23920b7567780c73d5e6ef30568"></a>kUrgent&#160;</td><td class="fielddoc">
<p>The lowest level, for messages that must always be logged. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a2c6a6e74a8a150cba779960062d126c0"></a>kJson&#160;</td><td class="fielddoc">
<p>For machine language output only. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a30bcc9bfa9b1cd8f269c6763287209cc"></a>kError&#160;</td><td class="fielddoc">
<p>For fatal error messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a8e3ed7030f92b6542e5354e937f2e0ee"></a>kWarning&#160;</td><td class="fielddoc">
<p>For non-fatal warning messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec"></a>kInfo&#160;</td><td class="fielddoc">
<p>The normal log level, for status messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a0e22aade4d30c09d021b81f88e422d59"></a>kInfo2&#160;</td><td class="fielddoc">
<p>For verbose status messages. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4"></a>kDebug&#160;</td><td class="fielddoc">
<p>For internal reporting. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a7059bc37726a537e725116d79d149cb3"></a>kDebug2&#160;</td><td class="fielddoc">
<p>Highest log level; verbose debug logging. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381ade1be3a5625f4037711f67c7064905d2"></a>kInfo1&#160;</td><td class="fielddoc">
<p>Alias for <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec" title="The normal log level, for status messages. ">kInfo</a>. </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5209ca5ee1a2a8181287485e950cf381a894c8bec70d9093570638d698983d86f"></a>kDebug1&#160;</td><td class="fielddoc">
<p>Alias for <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4" title="For internal reporting. ">kDebug</a>. </p>
</td></tr>
</table>

</div>
</div>
<h4 class="groupheader">Member Function Documentation</h4>
<a class="anchor" id="a00e886cc5cc5f7ea1058412eddee6da1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Logger::log </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td>
          <td class="paramname"><em>level</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">va_list&#160;</td>
          <td class="paramname"><em>args</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument with a specific output level. </p>
<p>Allocates a temporary 1KB buffer which is used to hold the formatted string. </p>

</div>
</div>

</div>
</div>
<a name="class_log" id="class_log"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class Log</td>
        </tr>
      </table>
</div><div class="memdoc">
<div class="textblock"><p>Wraps a set of static functions for easy global logging access. </p>
<p>This class has a set of static methods that make it easy to access a global logger instance without having to worry about extern symbols. It does this by keeping a static member variable pointing at the singleton logger instance, which is set with the <a class="el" href="group__logging.html#ad2ceb2fdb51b4dbc4baef0691bdda182" title="Sets the global logger singleton instance. ">setLogger()</a> static method.</p>
<p>There is also an inner utility class called <a class="el" href="class_log_1_1_set_output_level.html" title="Utility class to temporarily change the logging output level. ">SetOutputLevel</a> that uses C++ scoping rules to temporarily change the output logging level. When the <a class="el" href="class_log_1_1_set_output_level.html" title="Utility class to temporarily change the logging output level. ">SetOutputLevel</a> instance falls out of scope the output level is restored to the previous value. </p>
</div><div id="dynsection-2" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-2-trigger" src="closed.png" alt="+"/> Collaboration diagram for Log:</div>
<div id="dynsection-2-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-2-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="class_log__coll__graph.svg" width="95" height="127"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr><td colspan="2"><h3>Static Public Member Functions</h3></td></tr>
<tr><td colspan="2"><div class="groupHeader">Singleton logger access</div></td></tr>
<tr class="memitem:a8196cc2d2e0f3729089ae75cd176af1e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8196cc2d2e0f3729089ae75cd176af1e"></a>
static <a class="el" href="group__logging.html#class_logger">Logger</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a8196cc2d2e0f3729089ae75cd176af1e">getLogger</a> ()</td></tr>
<tr class="memdesc:a8196cc2d2e0f3729089ae75cd176af1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current global logger singleton. <br /></td></tr>
<tr class="separator:a8196cc2d2e0f3729089ae75cd176af1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2ceb2fdb51b4dbc4baef0691bdda182"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad2ceb2fdb51b4dbc4baef0691bdda182"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ad2ceb2fdb51b4dbc4baef0691bdda182">setLogger</a> (<a class="el" href="group__logging.html#class_logger">Logger</a> *logger)</td></tr>
<tr class="memdesc:ad2ceb2fdb51b4dbc4baef0691bdda182"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the global logger singleton instance. <br /></td></tr>
<tr class="separator:ad2ceb2fdb51b4dbc4baef0691bdda182"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8196cc2d2e0f3729089ae75cd176af1e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8196cc2d2e0f3729089ae75cd176af1e"></a>
static <a class="el" href="group__logging.html#class_logger">Logger</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a8196cc2d2e0f3729089ae75cd176af1e">getLogger</a> ()</td></tr>
<tr class="memdesc:a8196cc2d2e0f3729089ae75cd176af1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current global logger singleton. <br /></td></tr>
<tr class="separator:a8196cc2d2e0f3729089ae75cd176af1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2ceb2fdb51b4dbc4baef0691bdda182"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad2ceb2fdb51b4dbc4baef0691bdda182"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ad2ceb2fdb51b4dbc4baef0691bdda182">setLogger</a> (<a class="el" href="group__logging.html#class_logger">Logger</a> *logger)</td></tr>
<tr class="memdesc:ad2ceb2fdb51b4dbc4baef0691bdda182"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the global logger singleton instance. <br /></td></tr>
<tr class="separator:ad2ceb2fdb51b4dbc4baef0691bdda182"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Logging</div></td></tr>
<tr class="memitem:abfddf74c388c70413c8dbf5476fa2834"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abfddf74c388c70413c8dbf5476fa2834"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#abfddf74c388c70413c8dbf5476fa2834">log</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:abfddf74c388c70413c8dbf5476fa2834"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format. <br /></td></tr>
<tr class="separator:abfddf74c388c70413c8dbf5476fa2834"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f3dfddf5597422bf4eb0dd0086cd229"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6f3dfddf5597422bf4eb0dd0086cd229"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a6f3dfddf5597422bf4eb0dd0086cd229">log</a> (const std::string &amp;msg)</td></tr>
<tr class="memdesc:a6f3dfddf5597422bf4eb0dd0086cd229"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string object. <br /></td></tr>
<tr class="separator:a6f3dfddf5597422bf4eb0dd0086cd229"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6c8365460b6cbcb3e36bd933e291c44"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac6c8365460b6cbcb3e36bd933e291c44"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ac6c8365460b6cbcb3e36bd933e291c44">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">Logger::log_level_t</a> level, const char *fmt,...)</td></tr>
<tr class="memdesc:ac6c8365460b6cbcb3e36bd933e291c44"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format at a specific output level. <br /></td></tr>
<tr class="separator:ac6c8365460b6cbcb3e36bd933e291c44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26fc314b75435a85ae61c821babad400"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26fc314b75435a85ae61c821babad400"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a26fc314b75435a85ae61c821babad400">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">Logger::log_level_t</a> level, const std::string &amp;msg)</td></tr>
<tr class="memdesc:a26fc314b75435a85ae61c821babad400"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string output at a specific output level. <br /></td></tr>
<tr class="separator:a26fc314b75435a85ae61c821babad400"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b4dca8e702126bb6eeda874a240c501"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7b4dca8e702126bb6eeda874a240c501"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a7b4dca8e702126bb6eeda874a240c501">log</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a7b4dca8e702126bb6eeda874a240c501"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format. <br /></td></tr>
<tr class="separator:a7b4dca8e702126bb6eeda874a240c501"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41d5ab95eaf3ac7e9a35079b490d57e8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a41d5ab95eaf3ac7e9a35079b490d57e8"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a41d5ab95eaf3ac7e9a35079b490d57e8">log</a> (const std::string &amp;msg)</td></tr>
<tr class="memdesc:a41d5ab95eaf3ac7e9a35079b490d57e8"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string object. <br /></td></tr>
<tr class="separator:a41d5ab95eaf3ac7e9a35079b490d57e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a198427939ab193cd185d8886f6f0ebb1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a198427939ab193cd185d8886f6f0ebb1"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a198427939ab193cd185d8886f6f0ebb1">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">Logger::log_level_t</a> level, const char *fmt,...)</td></tr>
<tr class="memdesc:a198427939ab193cd185d8886f6f0ebb1"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format at a specific output level. <br /></td></tr>
<tr class="separator:a198427939ab193cd185d8886f6f0ebb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fb4c6a19689b8def583968eda775a16"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4fb4c6a19689b8def583968eda775a16"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4fb4c6a19689b8def583968eda775a16">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">Logger::log_level_t</a> level, const std::string &amp;msg)</td></tr>
<tr class="memdesc:a4fb4c6a19689b8def583968eda775a16"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string output at a specific output level. <br /></td></tr>
<tr class="separator:a4fb4c6a19689b8def583968eda775a16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Logging level helpers</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>These static methods log a message with an implicit log level. </p>
</div></td></tr>
<tr class="memitem:a0c934cd67d541d83e261cffc4714c9b3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c934cd67d541d83e261cffc4714c9b3"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a0c934cd67d541d83e261cffc4714c9b3">urgent</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a0c934cd67d541d83e261cffc4714c9b3"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a message with <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aca09a23920b7567780c73d5e6ef30568" title="The lowest level, for messages that must always be logged. ">Logger::kUrgent</a> level. <br /></td></tr>
<tr class="separator:a0c934cd67d541d83e261cffc4714c9b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd7a6d39964a226d10719f33d262f80a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd7a6d39964a226d10719f33d262f80a"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#afd7a6d39964a226d10719f33d262f80a">json</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:afd7a6d39964a226d10719f33d262f80a"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a message with <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a2c6a6e74a8a150cba779960062d126c0" title="For machine language output only. ">Logger::kJson</a> level. <br /></td></tr>
<tr class="separator:afd7a6d39964a226d10719f33d262f80a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ff7049d62b9094caf622d9d8b7d6c57"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4ff7049d62b9094caf622d9d8b7d6c57"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4ff7049d62b9094caf622d9d8b7d6c57">error</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a4ff7049d62b9094caf622d9d8b7d6c57"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a message with <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a30bcc9bfa9b1cd8f269c6763287209cc" title="For fatal error messages. ">Logger::kError</a> level. <br /></td></tr>
<tr class="separator:a4ff7049d62b9094caf622d9d8b7d6c57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a8d6b9e753f342e683546bc70999afd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a8d6b9e753f342e683546bc70999afd"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a1a8d6b9e753f342e683546bc70999afd">warning</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a1a8d6b9e753f342e683546bc70999afd"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a message with <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a8e3ed7030f92b6542e5354e937f2e0ee" title="For non-fatal warning messages. ">Logger::kWarning</a> level. <br /></td></tr>
<tr class="separator:a1a8d6b9e753f342e683546bc70999afd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52bf8d1b0ecfec71e6b21815ec165447"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52bf8d1b0ecfec71e6b21815ec165447"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a52bf8d1b0ecfec71e6b21815ec165447">info</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a52bf8d1b0ecfec71e6b21815ec165447"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a message with <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec" title="The normal log level, for status messages. ">Logger::kInfo</a> level. <br /></td></tr>
<tr class="separator:a52bf8d1b0ecfec71e6b21815ec165447"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a350246a1cc5865b6e2b9607594df671c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a350246a1cc5865b6e2b9607594df671c"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a350246a1cc5865b6e2b9607594df671c">info2</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a350246a1cc5865b6e2b9607594df671c"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a message with <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a0e22aade4d30c09d021b81f88e422d59" title="For verbose status messages. ">Logger::kInfo2</a> level. <br /></td></tr>
<tr class="separator:a350246a1cc5865b6e2b9607594df671c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae93e26f2dc19b74fee253dabc8722a18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae93e26f2dc19b74fee253dabc8722a18"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ae93e26f2dc19b74fee253dabc8722a18">debug</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:ae93e26f2dc19b74fee253dabc8722a18"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a message with <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4" title="For internal reporting. ">Logger::kDebug</a> level. <br /></td></tr>
<tr class="separator:ae93e26f2dc19b74fee253dabc8722a18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c364c452e1c63d500f82e33f40a0509"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c364c452e1c63d500f82e33f40a0509"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a9c364c452e1c63d500f82e33f40a0509">debug2</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a9c364c452e1c63d500f82e33f40a0509"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a message with <a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a7059bc37726a537e725116d79d149cb3" title="Highest log level; verbose debug logging. ">Logger::kDebug2</a> level. <br /></td></tr>
<tr class="separator:a9c364c452e1c63d500f82e33f40a0509"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><h3>Static Protected Attributes</h3></td></tr>
<tr class="memitem:a95c9278f739daf35e9c09490195febbe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a95c9278f739daf35e9c09490195febbe"></a>
static <a class="el" href="group__logging.html#class_logger">Logger</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a95c9278f739daf35e9c09490195febbe">s_logger</a> = NULL</td></tr>
<tr class="memdesc:a95c9278f739daf35e9c09490195febbe"><td class="mdescLeft">&#160;</td><td class="mdescRight">The single global logger instance. <br /></td></tr>
<tr class="separator:a95c9278f739daf35e9c09490195febbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>

</div>
</div>
<a name="class_stdout_logger" id="class_stdout_logger"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class StdoutLogger</td>
        </tr>
      </table>
</div><div class="memdoc">
<div class="textblock"><p>Simple logger that writes to stdout. </p>
</div><div id="dynsection-3" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-3-trigger" src="closed.png" alt="+"/> Inheritance diagram for StdoutLogger:</div>
<div id="dynsection-3-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-3-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="class_stdout_logger__inherit__graph.svg" width="110" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<div id="dynsection-4" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-4-trigger" src="closed.png" alt="+"/> Collaboration diagram for StdoutLogger:</div>
<div id="dynsection-4-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-4-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="class_stdout_logger__coll__graph.svg" width="110" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr><td colspan="2"><h3>Protected Member Functions</h3></td></tr>
<tr class="memitem:ad16a72a30fb121b28c1bab9267a426b3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad16a72a30fb121b28c1bab9267a426b3"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ad16a72a30fb121b28c1bab9267a426b3">_log</a> (const char *msg)</td></tr>
<tr class="memdesc:ad16a72a30fb121b28c1bab9267a426b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logs the message to stdout. <br /></td></tr>
<tr class="separator:ad16a72a30fb121b28c1bab9267a426b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac848f073f8fffce8b19e16d9152d910e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac848f073f8fffce8b19e16d9152d910e"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ac848f073f8fffce8b19e16d9152d910e">_log</a> (const char *msg)</td></tr>
<tr class="memdesc:ac848f073f8fffce8b19e16d9152d910e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logs the message to stdout. <br /></td></tr>
<tr class="separator:ac848f073f8fffce8b19e16d9152d910e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_group__logging"><td colspan="2" onclick="javascript:toggleInherit('pub_types_group__logging')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="group__logging.html#class_logger">Logger</a></td></tr>
<tr class="memitem:a5209ca5ee1a2a8181287485e950cf381 inherit pub_types_group__logging"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> { <br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aec3080807fafda83da96a51800b91709">URGENT</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a3ce1bbeb15a3d8e29e4c5e75492a781b">ERROR</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381afb1bf96f41b282521d9438106ea11bca">WARNING</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a61a9b6fc1e9babc448984b8a34ca2ed2">INFO</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aa07236365c754ad697a4786ff21e321e">INFO2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abdc8d840ac4b73e1bd3212184af8f85e">DEBUG</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a616a45f059b15bff1cda9207cd465564">DEBUG2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aca09a23920b7567780c73d5e6ef30568">kUrgent</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a2c6a6e74a8a150cba779960062d126c0">kJson</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a30bcc9bfa9b1cd8f269c6763287209cc">kError</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a8e3ed7030f92b6542e5354e937f2e0ee">kWarning</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec">kInfo</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a0e22aade4d30c09d021b81f88e422d59">kInfo2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4">kDebug</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a7059bc37726a537e725116d79d149cb3">kDebug2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ade1be3a5625f4037711f67c7064905d2">kInfo1</a> = kInfo, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a894c8bec70d9093570638d698983d86f">kDebug1</a> = kDebug
<br />
 }<tr class="memdesc:a5209ca5ee1a2a8181287485e950cf381"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logging levels.  <a href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a5209ca5ee1a2a8181287485e950cf381 inherit pub_types_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5209ca5ee1a2a8181287485e950cf381 inherit pub_types_group__logging"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> { <br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aec3080807fafda83da96a51800b91709">URGENT</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a3ce1bbeb15a3d8e29e4c5e75492a781b">ERROR</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381afb1bf96f41b282521d9438106ea11bca">WARNING</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a61a9b6fc1e9babc448984b8a34ca2ed2">INFO</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aa07236365c754ad697a4786ff21e321e">INFO2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abdc8d840ac4b73e1bd3212184af8f85e">DEBUG</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a616a45f059b15bff1cda9207cd465564">DEBUG2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aca09a23920b7567780c73d5e6ef30568">kUrgent</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a2c6a6e74a8a150cba779960062d126c0">kJson</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a30bcc9bfa9b1cd8f269c6763287209cc">kError</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a8e3ed7030f92b6542e5354e937f2e0ee">kWarning</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec">kInfo</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a0e22aade4d30c09d021b81f88e422d59">kInfo2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4">kDebug</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a7059bc37726a537e725116d79d149cb3">kDebug2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ade1be3a5625f4037711f67c7064905d2">kInfo1</a> = kInfo, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a894c8bec70d9093570638d698983d86f">kDebug1</a> = kDebug
<br />
 }<tr class="memdesc:a5209ca5ee1a2a8181287485e950cf381"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logging levels.  <a href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a5209ca5ee1a2a8181287485e950cf381 inherit pub_types_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_group__logging"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_group__logging')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="group__logging.html#class_logger">Logger</a></td></tr>
<tr class="memitem:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc41bfb031d896170c7675fa96a6b30c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#abc41bfb031d896170c7675fa96a6b30c">Logger</a> ()</td></tr>
<tr class="memdesc:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae93f62ca3e47716b7120acb032a260f3"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ae93f62ca3e47716b7120acb032a260f3">~Logger</a> ()</td></tr>
<tr class="memdesc:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc41bfb031d896170c7675fa96a6b30c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#abc41bfb031d896170c7675fa96a6b30c">Logger</a> ()</td></tr>
<tr class="memdesc:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae93f62ca3e47716b7120acb032a260f3"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ae93f62ca3e47716b7120acb032a260f3">~Logger</a> ()</td></tr>
<tr class="memdesc:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86a9875a4e4aae6670f16237e651ba3a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a86a9875a4e4aae6670f16237e651ba3a">setFilterLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging level to <em>level</em>. <br /></td></tr>
<tr class="separator:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65f0668007317623100b0eac42ae6796"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a65f0668007317623100b0eac42ae6796">getFilterLevel</a> () const </td></tr>
<tr class="memdesc:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging filter level. <br /></td></tr>
<tr class="separator:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2fcf77f7190217a3a277f75196cf4c0e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a2fcf77f7190217a3a277f75196cf4c0e">setOutputLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging output level to <em>level</em>. <br /></td></tr>
<tr class="separator:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cb967d830ff2cff918ce4eb67154301"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a9cb967d830ff2cff918ce4eb67154301">getOutputLevel</a> () const </td></tr>
<tr class="memdesc:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging output level. <br /></td></tr>
<tr class="separator:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86a9875a4e4aae6670f16237e651ba3a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a86a9875a4e4aae6670f16237e651ba3a">setFilterLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging level to <em>level</em>. <br /></td></tr>
<tr class="separator:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65f0668007317623100b0eac42ae6796"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a65f0668007317623100b0eac42ae6796">getFilterLevel</a> () const </td></tr>
<tr class="memdesc:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging filter level. <br /></td></tr>
<tr class="separator:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2fcf77f7190217a3a277f75196cf4c0e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a2fcf77f7190217a3a277f75196cf4c0e">setOutputLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging output level to <em>level</em>. <br /></td></tr>
<tr class="separator:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cb967d830ff2cff918ce4eb67154301"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a9cb967d830ff2cff918ce4eb67154301">getOutputLevel</a> () const </td></tr>
<tr class="memdesc:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging output level. <br /></td></tr>
<tr class="separator:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e63cbc1d6d8f374afe1d3e12b5f5842 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e63cbc1d6d8f374afe1d3e12b5f5842"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4e63cbc1d6d8f374afe1d3e12b5f5842">log</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a4e63cbc1d6d8f374afe1d3e12b5f5842 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format. <br /></td></tr>
<tr class="separator:a4e63cbc1d6d8f374afe1d3e12b5f5842 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e0a3c00612edfa447671831c8857e94"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4e0a3c00612edfa447671831c8857e94">log</a> (const std::string &amp;msg)</td></tr>
<tr class="memdesc:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string object. <br /></td></tr>
<tr class="separator:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28c8c541a0e97a275b9348613b1321fd inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28c8c541a0e97a275b9348613b1321fd"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a28c8c541a0e97a275b9348613b1321fd">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt,...)</td></tr>
<tr class="memdesc:a28c8c541a0e97a275b9348613b1321fd inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format at a specific output level. <br /></td></tr>
<tr class="separator:a28c8c541a0e97a275b9348613b1321fd inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a880f92a9fb0a790e947578b043d73cb9"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a880f92a9fb0a790e947578b043d73cb9">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const std::string &amp;msg)</td></tr>
<tr class="memdesc:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string output at a specific output level. <br /></td></tr>
<tr class="separator:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab18355845aa189c9cfb6a6b86b8c8868 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab18355845aa189c9cfb6a6b86b8c8868"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ab18355845aa189c9cfb6a6b86b8c8868">log</a> (const char *fmt, va_list args)</td></tr>
<tr class="memdesc:ab18355845aa189c9cfb6a6b86b8c8868 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument list. <br /></td></tr>
<tr class="separator:ab18355845aa189c9cfb6a6b86b8c8868 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00e886cc5cc5f7ea1058412eddee6da1 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a00e886cc5cc5f7ea1058412eddee6da1">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt, va_list args)</td></tr>
<tr class="memdesc:a00e886cc5cc5f7ea1058412eddee6da1 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument with a specific output level.  <a href="#a00e886cc5cc5f7ea1058412eddee6da1">More...</a><br /></td></tr>
<tr class="separator:a00e886cc5cc5f7ea1058412eddee6da1 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac85cc5c6ece86ba73fe3228a22834be1 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac85cc5c6ece86ba73fe3228a22834be1"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ac85cc5c6ece86ba73fe3228a22834be1">log</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:ac85cc5c6ece86ba73fe3228a22834be1 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format. <br /></td></tr>
<tr class="separator:ac85cc5c6ece86ba73fe3228a22834be1 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e0a3c00612edfa447671831c8857e94"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4e0a3c00612edfa447671831c8857e94">log</a> (const std::string &amp;msg)</td></tr>
<tr class="memdesc:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string object. <br /></td></tr>
<tr class="separator:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e500a1fe9a0fc6cba5991aadef48ab4 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5e500a1fe9a0fc6cba5991aadef48ab4"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5e500a1fe9a0fc6cba5991aadef48ab4">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt,...)</td></tr>
<tr class="memdesc:a5e500a1fe9a0fc6cba5991aadef48ab4 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format at a specific output level. <br /></td></tr>
<tr class="separator:a5e500a1fe9a0fc6cba5991aadef48ab4 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a880f92a9fb0a790e947578b043d73cb9"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a880f92a9fb0a790e947578b043d73cb9">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const std::string &amp;msg)</td></tr>
<tr class="memdesc:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string output at a specific output level. <br /></td></tr>
<tr class="separator:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc877aa7fe11b84dca4b6acfca00ab56 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc877aa7fe11b84dca4b6acfca00ab56"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#acc877aa7fe11b84dca4b6acfca00ab56">log</a> (const char *fmt, va_list args)</td></tr>
<tr class="memdesc:acc877aa7fe11b84dca4b6acfca00ab56 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument list. <br /></td></tr>
<tr class="separator:acc877aa7fe11b84dca4b6acfca00ab56 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c0ec5c4ffd1d27d1c0934fade870d75 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c0ec5c4ffd1d27d1c0934fade870d75"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5c0ec5c4ffd1d27d1c0934fade870d75">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt, va_list args)</td></tr>
<tr class="memdesc:a5c0ec5c4ffd1d27d1c0934fade870d75 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument with a specific output level. <br /></td></tr>
<tr class="separator:a5c0ec5c4ffd1d27d1c0934fade870d75 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_group__logging"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_group__logging')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="group__logging.html#class_logger">Logger</a></td></tr>
<tr class="memitem:a1cae1fe08a7e386fd0539f61658d3a1f inherit pro_attribs_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1cae1fe08a7e386fd0539f61658d3a1f"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a1cae1fe08a7e386fd0539f61658d3a1f">m_filter</a></td></tr>
<tr class="memdesc:a1cae1fe08a7e386fd0539f61658d3a1f inherit pro_attribs_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current logging filter level. <br /></td></tr>
<tr class="separator:a1cae1fe08a7e386fd0539f61658d3a1f inherit pro_attribs_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02dcc6a005e650891bbfb8c76e590185 inherit pro_attribs_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02dcc6a005e650891bbfb8c76e590185"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a02dcc6a005e650891bbfb8c76e590185">m_level</a></td></tr>
<tr class="memdesc:a02dcc6a005e650891bbfb8c76e590185 inherit pro_attribs_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current log output level. <br /></td></tr>
<tr class="separator:a02dcc6a005e650891bbfb8c76e590185 inherit pro_attribs_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>

</div>
</div>
<a name="class_file_logger" id="class_file_logger"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">class FileLogger</td>
        </tr>
      </table>
</div><div class="memdoc">
<div class="textblock"><p>Simple logger that writes to a file. </p>
</div><div id="dynsection-5" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-5-trigger" src="closed.png" alt="+"/> Inheritance diagram for FileLogger:</div>
<div id="dynsection-5-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-5-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="class_file_logger__inherit__graph.svg" width="94" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<div id="dynsection-6" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-6-trigger" src="closed.png" alt="+"/> Collaboration diagram for FileLogger:</div>
<div id="dynsection-6-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-6-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="class_file_logger__coll__graph.svg" width="359" height="460"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr><td colspan="2"><h3>Public Member Functions</h3></td></tr>
<tr class="memitem:ae0594e57480f55cb4978e2c428de4d7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae0594e57480f55cb4978e2c428de4d7c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>FileLogger</b> (const char *file_path)</td></tr>
<tr class="separator:ae0594e57480f55cb4978e2c428de4d7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_group__logging"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_group__logging')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="group__logging.html#class_logger">Logger</a></td></tr>
<tr class="memitem:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc41bfb031d896170c7675fa96a6b30c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#abc41bfb031d896170c7675fa96a6b30c">Logger</a> ()</td></tr>
<tr class="memdesc:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae93f62ca3e47716b7120acb032a260f3"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ae93f62ca3e47716b7120acb032a260f3">~Logger</a> ()</td></tr>
<tr class="memdesc:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc41bfb031d896170c7675fa96a6b30c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#abc41bfb031d896170c7675fa96a6b30c">Logger</a> ()</td></tr>
<tr class="memdesc:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:abc41bfb031d896170c7675fa96a6b30c inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae93f62ca3e47716b7120acb032a260f3"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ae93f62ca3e47716b7120acb032a260f3">~Logger</a> ()</td></tr>
<tr class="memdesc:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:ae93f62ca3e47716b7120acb032a260f3 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86a9875a4e4aae6670f16237e651ba3a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a86a9875a4e4aae6670f16237e651ba3a">setFilterLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging level to <em>level</em>. <br /></td></tr>
<tr class="separator:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65f0668007317623100b0eac42ae6796"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a65f0668007317623100b0eac42ae6796">getFilterLevel</a> () const </td></tr>
<tr class="memdesc:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging filter level. <br /></td></tr>
<tr class="separator:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2fcf77f7190217a3a277f75196cf4c0e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a2fcf77f7190217a3a277f75196cf4c0e">setOutputLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging output level to <em>level</em>. <br /></td></tr>
<tr class="separator:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cb967d830ff2cff918ce4eb67154301"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a9cb967d830ff2cff918ce4eb67154301">getOutputLevel</a> () const </td></tr>
<tr class="memdesc:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging output level. <br /></td></tr>
<tr class="separator:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86a9875a4e4aae6670f16237e651ba3a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a86a9875a4e4aae6670f16237e651ba3a">setFilterLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging level to <em>level</em>. <br /></td></tr>
<tr class="separator:a86a9875a4e4aae6670f16237e651ba3a inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65f0668007317623100b0eac42ae6796"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a65f0668007317623100b0eac42ae6796">getFilterLevel</a> () const </td></tr>
<tr class="memdesc:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging filter level. <br /></td></tr>
<tr class="separator:a65f0668007317623100b0eac42ae6796 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2fcf77f7190217a3a277f75196cf4c0e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a2fcf77f7190217a3a277f75196cf4c0e">setOutputLevel</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level)</td></tr>
<tr class="memdesc:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Changes the logging output level to <em>level</em>. <br /></td></tr>
<tr class="separator:a2fcf77f7190217a3a277f75196cf4c0e inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cb967d830ff2cff918ce4eb67154301"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a9cb967d830ff2cff918ce4eb67154301">getOutputLevel</a> () const </td></tr>
<tr class="memdesc:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current logging output level. <br /></td></tr>
<tr class="separator:a9cb967d830ff2cff918ce4eb67154301 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e63cbc1d6d8f374afe1d3e12b5f5842 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e63cbc1d6d8f374afe1d3e12b5f5842"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4e63cbc1d6d8f374afe1d3e12b5f5842">log</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:a4e63cbc1d6d8f374afe1d3e12b5f5842 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format. <br /></td></tr>
<tr class="separator:a4e63cbc1d6d8f374afe1d3e12b5f5842 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e0a3c00612edfa447671831c8857e94"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4e0a3c00612edfa447671831c8857e94">log</a> (const std::string &amp;msg)</td></tr>
<tr class="memdesc:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string object. <br /></td></tr>
<tr class="separator:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28c8c541a0e97a275b9348613b1321fd inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28c8c541a0e97a275b9348613b1321fd"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a28c8c541a0e97a275b9348613b1321fd">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt,...)</td></tr>
<tr class="memdesc:a28c8c541a0e97a275b9348613b1321fd inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format at a specific output level. <br /></td></tr>
<tr class="separator:a28c8c541a0e97a275b9348613b1321fd inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a880f92a9fb0a790e947578b043d73cb9"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a880f92a9fb0a790e947578b043d73cb9">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const std::string &amp;msg)</td></tr>
<tr class="memdesc:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string output at a specific output level. <br /></td></tr>
<tr class="separator:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab18355845aa189c9cfb6a6b86b8c8868 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab18355845aa189c9cfb6a6b86b8c8868"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ab18355845aa189c9cfb6a6b86b8c8868">log</a> (const char *fmt, va_list args)</td></tr>
<tr class="memdesc:ab18355845aa189c9cfb6a6b86b8c8868 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument list. <br /></td></tr>
<tr class="separator:ab18355845aa189c9cfb6a6b86b8c8868 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00e886cc5cc5f7ea1058412eddee6da1 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a00e886cc5cc5f7ea1058412eddee6da1">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt, va_list args)</td></tr>
<tr class="memdesc:a00e886cc5cc5f7ea1058412eddee6da1 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument with a specific output level.  <a href="#a00e886cc5cc5f7ea1058412eddee6da1">More...</a><br /></td></tr>
<tr class="separator:a00e886cc5cc5f7ea1058412eddee6da1 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac85cc5c6ece86ba73fe3228a22834be1 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac85cc5c6ece86ba73fe3228a22834be1"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#ac85cc5c6ece86ba73fe3228a22834be1">log</a> (const char *fmt,...)</td></tr>
<tr class="memdesc:ac85cc5c6ece86ba73fe3228a22834be1 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format. <br /></td></tr>
<tr class="separator:ac85cc5c6ece86ba73fe3228a22834be1 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e0a3c00612edfa447671831c8857e94"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a4e0a3c00612edfa447671831c8857e94">log</a> (const std::string &amp;msg)</td></tr>
<tr class="memdesc:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string object. <br /></td></tr>
<tr class="separator:a4e0a3c00612edfa447671831c8857e94 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e500a1fe9a0fc6cba5991aadef48ab4 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5e500a1fe9a0fc6cba5991aadef48ab4"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5e500a1fe9a0fc6cba5991aadef48ab4">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt,...)</td></tr>
<tr class="memdesc:a5e500a1fe9a0fc6cba5991aadef48ab4 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format at a specific output level. <br /></td></tr>
<tr class="separator:a5e500a1fe9a0fc6cba5991aadef48ab4 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a880f92a9fb0a790e947578b043d73cb9"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a880f92a9fb0a790e947578b043d73cb9">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const std::string &amp;msg)</td></tr>
<tr class="memdesc:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> a string output at a specific output level. <br /></td></tr>
<tr class="separator:a880f92a9fb0a790e947578b043d73cb9 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc877aa7fe11b84dca4b6acfca00ab56 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc877aa7fe11b84dca4b6acfca00ab56"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#acc877aa7fe11b84dca4b6acfca00ab56">log</a> (const char *fmt, va_list args)</td></tr>
<tr class="memdesc:acc877aa7fe11b84dca4b6acfca00ab56 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument list. <br /></td></tr>
<tr class="separator:acc877aa7fe11b84dca4b6acfca00ab56 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c0ec5c4ffd1d27d1c0934fade870d75 inherit pub_methods_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c0ec5c4ffd1d27d1c0934fade870d75"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5c0ec5c4ffd1d27d1c0934fade870d75">log</a> (<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> level, const char *fmt, va_list args)</td></tr>
<tr class="memdesc:a5c0ec5c4ffd1d27d1c0934fade870d75 inherit pub_methods_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group__logging.html#class_log" title="Wraps a set of static functions for easy global logging access. ">Log</a> with format using an argument with a specific output level. <br /></td></tr>
<tr class="separator:a5c0ec5c4ffd1d27d1c0934fade870d75 inherit pub_methods_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><h3>Protected Member Functions</h3></td></tr>
<tr class="memitem:aac2547e4004d2d9da49fc136bfc9dbe1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aac2547e4004d2d9da49fc136bfc9dbe1"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#aac2547e4004d2d9da49fc136bfc9dbe1">_log</a> (const char *msg)</td></tr>
<tr class="memdesc:aac2547e4004d2d9da49fc136bfc9dbe1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logs the message to the file. <br /></td></tr>
<tr class="separator:aac2547e4004d2d9da49fc136bfc9dbe1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><h3>Protected Attributes</h3></td></tr>
<tr class="memitem:a2cf2630d046475330389f0b5f69cadf7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2cf2630d046475330389f0b5f69cadf7"></a>
const std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a2cf2630d046475330389f0b5f69cadf7">m_file_path</a></td></tr>
<tr class="memdesc:a2cf2630d046475330389f0b5f69cadf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">The name of the file, including the path, to log to. <br /></td></tr>
<tr class="separator:a2cf2630d046475330389f0b5f69cadf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a768894cc54790e18e42bfb567c6e4910"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a768894cc54790e18e42bfb567c6e4910"></a>
std::ofstream&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a768894cc54790e18e42bfb567c6e4910">m_logFile</a></td></tr>
<tr class="memdesc:a768894cc54790e18e42bfb567c6e4910"><td class="mdescLeft">&#160;</td><td class="mdescRight">The name of the file, including the path, to log to. <br /></td></tr>
<tr class="separator:a768894cc54790e18e42bfb567c6e4910"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_group__logging"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_group__logging')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="group__logging.html#class_logger">Logger</a></td></tr>
<tr class="memitem:a1cae1fe08a7e386fd0539f61658d3a1f inherit pro_attribs_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1cae1fe08a7e386fd0539f61658d3a1f"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a1cae1fe08a7e386fd0539f61658d3a1f">m_filter</a></td></tr>
<tr class="memdesc:a1cae1fe08a7e386fd0539f61658d3a1f inherit pro_attribs_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current logging filter level. <br /></td></tr>
<tr class="separator:a1cae1fe08a7e386fd0539f61658d3a1f inherit pro_attribs_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02dcc6a005e650891bbfb8c76e590185 inherit pro_attribs_group__logging"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02dcc6a005e650891bbfb8c76e590185"></a>
<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a02dcc6a005e650891bbfb8c76e590185">m_level</a></td></tr>
<tr class="memdesc:a02dcc6a005e650891bbfb8c76e590185 inherit pro_attribs_group__logging"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current log output level. <br /></td></tr>
<tr class="separator:a02dcc6a005e650891bbfb8c76e590185 inherit pro_attribs_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_group__logging"><td colspan="2" onclick="javascript:toggleInherit('pub_types_group__logging')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="group__logging.html#class_logger">Logger</a></td></tr>
<tr class="memitem:a5209ca5ee1a2a8181287485e950cf381 inherit pub_types_group__logging"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> { <br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aec3080807fafda83da96a51800b91709">URGENT</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a3ce1bbeb15a3d8e29e4c5e75492a781b">ERROR</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381afb1bf96f41b282521d9438106ea11bca">WARNING</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a61a9b6fc1e9babc448984b8a34ca2ed2">INFO</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aa07236365c754ad697a4786ff21e321e">INFO2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abdc8d840ac4b73e1bd3212184af8f85e">DEBUG</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a616a45f059b15bff1cda9207cd465564">DEBUG2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aca09a23920b7567780c73d5e6ef30568">kUrgent</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a2c6a6e74a8a150cba779960062d126c0">kJson</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a30bcc9bfa9b1cd8f269c6763287209cc">kError</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a8e3ed7030f92b6542e5354e937f2e0ee">kWarning</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec">kInfo</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a0e22aade4d30c09d021b81f88e422d59">kInfo2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4">kDebug</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a7059bc37726a537e725116d79d149cb3">kDebug2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ade1be3a5625f4037711f67c7064905d2">kInfo1</a> = kInfo, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a894c8bec70d9093570638d698983d86f">kDebug1</a> = kDebug
<br />
 }<tr class="memdesc:a5209ca5ee1a2a8181287485e950cf381"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logging levels.  <a href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a5209ca5ee1a2a8181287485e950cf381 inherit pub_types_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5209ca5ee1a2a8181287485e950cf381 inherit pub_types_group__logging"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">log_level_t</a> { <br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aec3080807fafda83da96a51800b91709">URGENT</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a3ce1bbeb15a3d8e29e4c5e75492a781b">ERROR</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381afb1bf96f41b282521d9438106ea11bca">WARNING</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a61a9b6fc1e9babc448984b8a34ca2ed2">INFO</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aa07236365c754ad697a4786ff21e321e">INFO2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abdc8d840ac4b73e1bd3212184af8f85e">DEBUG</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a616a45f059b15bff1cda9207cd465564">DEBUG2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381aca09a23920b7567780c73d5e6ef30568">kUrgent</a> = 0, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a2c6a6e74a8a150cba779960062d126c0">kJson</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a30bcc9bfa9b1cd8f269c6763287209cc">kError</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a8e3ed7030f92b6542e5354e937f2e0ee">kWarning</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ae2dae72bbbe478b4ece96ee72ce613ec">kInfo</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a0e22aade4d30c09d021b81f88e422d59">kInfo2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381abb93ac9bb74b3ce94a909b7362db37b4">kDebug</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a7059bc37726a537e725116d79d149cb3">kDebug2</a>, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381ade1be3a5625f4037711f67c7064905d2">kInfo1</a> = kInfo, 
<br />
&#160;&#160;<a class="el" href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381a894c8bec70d9093570638d698983d86f">kDebug1</a> = kDebug
<br />
 }<tr class="memdesc:a5209ca5ee1a2a8181287485e950cf381"><td class="mdescLeft">&#160;</td><td class="mdescRight">Logging levels.  <a href="group__logging.html#a5209ca5ee1a2a8181287485e950cf381">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a5209ca5ee1a2a8181287485e950cf381 inherit pub_types_group__logging"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Mon Mar 7 2016 16:49:50 for Kinetis Bootloader Host by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
